

# 重写JWT
from rest_framework.pagination import PageNumberPagination
from rest_framework.response import Response


def jwt_response_payload_handler(token, user=None, request=None):
    """
    自定义jwt认证成功返回数据
    """
    return {
        'token': token,
        'id': user.id,
        'username': user.username
    }

# 重写分页器
class UserPageNum(PageNumberPagination):
    page_size = 5#后端显示的页数
    page_size_query_param = 'pagesize'#前端发送的每页数目关键子名
    max_page_size = 10#最大的页数

    def get_paginated_response(self, data):
        return Response({
            'count': self.page.paginator.count,#总数量
            'lists':data,#用户数量
            'page':self.page.number,#当前数页
            'pages':self.page.paginator.num_pages,#总页数
            'pagesize':self.page_size#后端指定的页容量

        })
